package com.eistert.java.datastructure._10_Heap;

/**
 * @Description: Priority queue implementation code
 * @Author: ai
 * @create: 2023-04-05 07:36
 */
public interface _10_PriorityQueue {
    /**
     *priority queue 可以使用不同的低层实现
     *
     * 第一种实现：普通线型结构，入队：O(1),出队（拿出最大元素）O(n)
     *
     * 第二种实现：顺序线型结构：入队：O(n),出队（拿出最大元素）O(1)
     *
     * 第三种实现：堆： 入队：O(logn)，出队：O(logn)
     *
     *普通队列：先进先出，后进后出
     *
     * 优先队列：出队顺序和入队顺序无关，和优先级相关
     */


    /**
     * 二叉堆是一颗完全二叉树：
     * 1.缺失的节点一定在节点的最左侧。
     * 1.堆中某个节点的值总是不大于其父节点的值，即最大堆。
     *
     */

    /**
     * 出队元素：优先级较高的元素
     */

    /**
     *队首元素：优先级较高的元素
     */
}
